The present invention relates to a microprocessor and a data processor using the former, and more particularly, to a technique which is effective when it is applied to a data processor including a plurality of microprocessors, for example.
A well known prior art microprocessor is the Intel Type 8086 which is disclosed in the "IAPX86 Family--User's Manual" published by INTEL Japan Co., Ltd. on Aug. 20, 1981.
The microprocessor Type 8086 can be used to form a data processor having a relatively high processing capacity if it is combined with another microprocessor Type 8087 which is also disclosed in the above-referenced Publication. In other words, a data processor is formed in such a way that the two kinds of microprocessors perform parallel processing operations. In this case, the microprocessor Type 8086 serves as the master processor, whereas the microprocessor Type 8087 operates as a slave processor, or a numeric processor extension. In this case, the slave processor takes exclusive charge of floating-point arithmetic.
If that data processor is caused to execute data processing so as to change the processing to be conducted in accordance with the result of the floating-point arithmetic, the following problems are encountered, as determined by the investigations conducted by the present inventors.
This data processing is executed in accordance with the following steps, as will be described hereinafter. Specifically, floating-point arithmetic is performed by the slave processor 8087, and the status data expressing the result is written in a RAM (Random Access Memory). Next the master processor 8086 fetches the status data from the RAM into its registers and determines the processing to be executed in accordance with the status data.
Because the number of steps to be followed becomes relatively large, there arise the following problems: (1) the number of steps in the program is increased, and so the program becomes complicated; (2) the time period required for the processing is elongated in accordance with the increase in the number of steps in the program; and (3) the region of the RAM for storing the program is enlarged with the increase in the number of steps in the program.